Skip to main content

Windows환경 적용 방법

1.개요

본 문서는 소프트캠프㈜의 서비스링커 동작 과정 표준 가이드입니다.

고객사 업무 간에 업무 웹페이지에 암호화된 문서를 올릴 경우 업무에 지장이 생긴다.

따라서 업무 웹페이지에 파일 업 다운로드시 자동으로 문서의 암복호화를 진행해주는 서비스 링커가 필요하다.

1.1. 서비스링커 진행 순서

  1. 자바설치 --> 고객사 장비에 jdk 설치 되어있지만 본 문서에서는 테스트를 위해 설치 합니다.

  2. 설정파일 편집 (keymanager_setting.properties)

  3. 콘솔에서 서비스 등록 //범주,등급,개인 정책 존재 必

  4. 키매니저 레지스트리 등록

  5. 키매니저 시작 //키파일 받아오기

  6. 설정파일 환경설정 (softcamp.properties)

  7. TestEnc.java, TestDec.java 경로 설정

  8. 암복호화 자바 스크립트 실행

  9. 서비스링커 테스트 완료

2.자바설치(고객사 업무시스템에서는 진행하지 않습니다.)

서비스링커 동작 스크립트가 자바로 구성되어 있기 때문에 환경에 자바가 설치되어 있어야 한다.

2.1. Oracle 접속 후 Java 설치

Oracle Java Technologies | Oracle 접속

Alt text

Alt text

Alt text

2.2. 환경 변수 등록

[시스템 환경 변수 편집] 열기

Alt text

환경 변수(N) 클릭

Alt text

[시스템 변수(S)] - Path - 편집

Alt text

새로만들기(N) - 찾아보기(B) - [Java\jdk-19\bin] - 확인

Alt text

3. 키매니저 환경설정

3.1. 키매니저 설정파일

해당 경로에 있는 파일을 편집합니다.

C:\softcamp\02_Module\01_KeyManager

Keymanager_setting.properties 키매니저 설정파일 편집

3.2. 경로설정

Alt text

#############################################
# #
# COMMON INFO : Site에 맞게 설정해서 사용 #
# #
#############################################

# 키 매니저 로그 경로
LogPath = C:\\test

# 키 매니저 lock 파일 생성 경로
# lockPath = ./

# 키 파일 저장 경로
KeyPath = C:\\softcamp\\04_KeyFile

#키 매니저 갱신 주기 및 시간 지정
StartTime = 0
RequestCycle = 24

#logFilter = ERROR; INFO; WARNING
LogFilter = ERROR; INFO; WARNING; DEBUG; LIB; sckmenv;

# 키 매니저 시작 할 때, 키 파일 업데이트 여부 ( 0: not update, not 0: update, default: update )
FirstUpdate = 1

3.3. SCI 서버 정보 수정

인증을 받아올 SCI 서버의 정보를 입력

Alt text

  • 다운로드 하려는 키파일의 타입 (1 : MAC | 2 : DAC | 3 : Grade)

Ex

MAC 키와 DAC키를 사용 – DownloadKeyType = 3

MAC 키와 Grade 키를 사용 – DownloadKeyType = 4

MAC DAC Grade 모두 사용 – DownloadKeyType = 7

########################################
# #
# SERVER INFO : AKS에 대한 정보 #
# #
# AKSOS (0: windows, 1: unix) #
# #
########################################

ServerIP0 = 10.81.10.70
ServerPort0 = 62000
Priority0 = 0
AKSOS0 = 0
DownloadKeyType0 = 7
#MACKeyFilename0 = key0
#DACKeyFilename0 = keyDAC0
#GradeKeyFilename0 = Grade0
#SSL0 = 1
#KEYVERO = 4

3.4. 인증정보타입설정

SCI 서버 연동 시스템 관리에서 인증할 정보 타입 편집

키를 인증 받아올 타입 설정

  • 0 : IP
  • 1 : hostname

Alt text

################ sck, 4.2.0.3 키검증 ################
#Backup file nema (0: .yyyymmddhhmmss, 1: .backup) backup을 수행합니다.
#BackupFlag = 1

#Error Keyfile Backup 키파일 경로에 error폴더 생성한 후 기존의 오류난 파일 백업함(단, 존재할 경우에만)
#ErrorKeyBackup = 1

# SCI 서버 연동 시스템 관리에서 인증할 정보 타입 (0:IP / 1:hostname)
KeyManagerAuthType = 0
# SCI 서버 연동 시스템 관리에서 인증 hostname 최대 길이(Default:15)
#HostnameMaxLength = 15

4. 콘솔 서비스 등록

4.1. 서비스링커 서비스 추가

관리자 콘솔 접속 후

좌측 탭의 연동시스템관리 에서 서비스 등록 추가

Alt text

Alt text

4.2. 서비스 등록 후 적용

Alt text

5. 키매니저 레지 등록

5.1. 키매니저 동작

CMD창 접속

키매니저 경로에 접속하여 동작 확인

cd C:\softcamp\02_Module\01_KeyManager

java -jar sckm_5.0.0.12.jar
Usagee: java -jar sckm<5.0.0.12>.jar [register | start | shutdown | status | update | registstatus]
  • Java -jar sckm_5.0.0.12.jar 입력
  • Regiser : 등록
  • Start : 시작
  • Shutdown : 종료
  • Status : 상태 확인
  • Update : 업데이트
  • Registatus : 레지 상태 확인

5.2. 키매니저 등록

Java -jar sckm_5.0.0.12.jar register

1 입력 => 콘솔에서 생성한 서비스 ID넘버

키매니저 레지 등록 완료된 모습

Alt text

6. 키매니저 시작

해당 경로에 키파일이 생성됩니다.

C:\softcamp\04_KeyFile

6.1. 키매니저 시작 전 권한부여

관리자 콘솔 접속 후

좌측 탭의 [연동시스템관리] - [서비스링커 정보] 에서 시스템 승인 설정

Alt text

Alt text

CAUTION

시스템 승인 설정을 하지 않고 키매니저 시작 시 'ServiceID not granted' 권한 오류.

6.2. 키매니저 시작

CMD 창 접속 후

cd C:\softcamp\002_Module\01_KeyManager
java -jar sckm_5.0.0.12.jar start

6.3. 키파일 생성 모습

Alt text

7. 서비스링커 환경설정

실제 경로에 접속하여 파일을 편집합니다.

C:\softcamp\02_Module\02_ServiceLinker

서비스링커 환경설정 파일 softcamp.properties 편집

Alt text

###########################################
# #
# COMMON INFO : Site에 맞게 설정해서 사용 #
# #
###########################################

# 로그 여부 ( 0 이면 로그 남기지 않음, 그 외는 로그 남김 )
LogWrite = 1

# 로그 파일 경로 ( 시스템의 절대 경로, ex. /usr/local/ )
LogPath = C:\\softcamp\\05_SCSLLog

8. 암복호화 스크립트 경로 설정

실제 경로에 접속하여 파일을 편집합니다.

C:\softcamp\03_Sample 

해당 경로의 TestDec.java, TestEnc.java, test.bat 편집

TestDec.java

import SCSL.*;

public final class TestDec
{
public static void main(String[] args)
{
String srcFile,dstFile;

srcFile="C:\\Users\\Security365\\Desktop\\softcamp\\03_Sample\\test_Enc.xls";
dstFile="C:\\Users\\Security365\\Desktop\\softcamp\\03_Sample\\test_Dec.xls";

SLDsFile sFile = new SLDsFile();

sFile.SettingPathForProperty("C:\\softcamp\\02_Module\\02_ServiceLinker\\softcamp.properties");

int retVal = sFile.CreateDecryptFileDAC (
"C:\\softcamp\\04_KeyFile\\keyDAC_SVR0.sc",
"SECURITYDOMAIN",
srcFile,
dstFile);
System.out.println("CreateDecryptFileDAC [" + retVal + "]");
}
}

TestEnc.java

import SCSL.*;

public final class TestEnc
{
public static void main(String[] args)
{
String srcFile,dstFile;

srcFile="C:\\softcamp\\03_Sample\\test.xls";
dstFile="C:\\softcamp\\03_Sample\\test_Enc.xls";

SLDsFile sFile = new SLDsFile();

sFile.SettingPathForProperty("C:\\softcamp\\02_Module\\02_ServiceLinker\\softcamp.properties");

sFile.SLDsInitDAC();
sFile.SLDsAddUserDAC("SECURITYDOMAIN", "111001100", 0, 0, 0);

int ret;
ret = sFile.SLDsEncFileDACV2("C:\\softcamp\\04_KeyFile\\keyDAC_SVR0.sc", "System", srcFile, dstFile, 1);
System.out.println("SLDsEncFileDAC :" + ret);

}
}

test.bat 설정

javac -classpath c:\\softcamp\\02_Module\\02_ServiceLinker\\scsl.jar TestEnc.java
java -classpath c:\\softcamp\\02_Module\\02_ServiceLinker\\scsl.jar; TestEnc

javac -classpath c:\\softcamp\\02_Module\\02_ServiceLinker\\scsl.jar TestDec.java
java -classpath c:\\softcamp\\02_Module\\02_ServiceLinker\\scsl.jar; TestDec

9. 암복호화 스크립트 실행

9.1. 암복호화 스크립트 동작 전

test.bat , test.xls , TestDec.java , TestEnc.java

네 개의 파일이 존재함

9.2. 암복호화 스크립트 실행

CMD 창 접속

cd C:\softcamp\03_Sample
test.bat

스크립트 동작 시 모습

Alt text

10. 서비스링커 테스트 완료

스크립트 실행 후 세 개의 파일이 추가됨.

test.xls , test_Dec.xls , test_Enc.xls

Alt text